package com.techsoul.module.pms.pojo.vo;

import java.math.BigDecimal;

import com.techsoul.common.core.annotation.ExcelField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;

import java.util.Date;

/**
 * 出库明细 Vo
 * 
 * @author liuen
 * @date 2022-01-25
 */
@Data
@Accessors(chain = true)
public class TbWmsMaterialDeliveryLineVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("")
    private String companyNo;
    @ApiModelProperty("")
    private String site;

    @ApiModelProperty("发货仓库")
    private String pickUpWarehouseNo;

    @ApiModelProperty("出发城市")
    private String departure;
    @ApiModelProperty("到达城市")
    private String destination;
    @ApiModelProperty("库存号")
    private String materialVehicleInLocationId;
    @ApiModelProperty("包装容器")
    private String containerNo;
    @ApiModelProperty("运单号")
    private String freightOrderNo;
    @ApiModelProperty("货物状态")
    private String materialStatus;
    @ApiModelProperty("排放")
    private String paiFang;
    @ApiModelProperty("马力")
    private String enginePower;
    @ApiModelProperty("燃料类型")
    private String vehicleFueType;
    @ApiModelProperty("")
    private Long lineNo;
    @ApiModelProperty("相应入库明细单号")
    private String receivedLineId;
    @ApiModelProperty("随车工具出库否")
    private String accessaryDeliveryYn;
    @ApiModelProperty("仓储费是否按单结算")
    private String needSettledByLineYn;

    private String vehicleLoadType;
    private String vinNo;

    private String chassisCertNumber;

    private String engineModel;

    private String engineNo;

    private String certificatesNo;

    private String manufactory;

    private String vehicleBrand;

    private String vehicleName;

    private String vehicleModel;

    private Date certificatesDate;


    @ApiModelProperty("")
    private BigDecimal planQuantity;

    @ApiModelProperty("")
    private BigDecimal deliveryQuantity;

    @ApiModelProperty("")
    private String status;

    @ApiModelProperty("")
    private String remark;

    @ApiModelProperty("")
    private BigDecimal truckFee;

    @ApiModelProperty("")
    private BigDecimal freightQuantity;

    @ApiModelProperty("")
    private Long version;


    @ApiModelProperty("出库物品类型，vehicle 商品车 tools 随车工具")
    private String deliveryType;


    @ApiModelProperty("")
    private String measUnitNo;



    @ApiModelProperty("")
    private String deliveryId;

    @ApiModelProperty("")
    private Long freightorderLineSeqId;

    @ApiModelProperty("库位号")
    private String locationNo;

    @ApiModelProperty("")
    private String batchNo;

    @ApiModelProperty("")
    private BigDecimal palletQty;

    @ApiModelProperty("")
    private String id;

    @ApiModelProperty("是否有效（数据字典sys_yn_type，默认1-是）")
    private String isValid;

    @ApiModelProperty("创建人")
    private String createBy;



    @ApiModelProperty("更新人")
    private String updateBy;


    @ApiModelProperty("创建人名称")
    private String createByName;

    @ApiModelProperty("更新人名称")
    private String updateByName;
    @ApiModelProperty("案件名称")
    private String caseName;

    @ApiModelProperty("随车工具是否出库")
    private String isToolOutBound;

    @ApiModelProperty("射频标签号")
    private String  rfidCode;
    @ApiModelProperty("重量")
    private Double  weight;

    @ApiModelProperty("先进先出逻辑")
    private String  inAndOutType;
    @ApiModelProperty("收货地址")
    private String consigneeAddress;
    @ApiModelProperty("图号")
    private String skuCode;
    @ApiModelProperty("货值")
    private Double cargoValue;
    @ApiModelProperty("客户")
    @ExcelField(title = "工厂代码", sort = 10)
    private String customerNo;

    @ApiModelProperty("客户名称")
    @ExcelField(title = "工厂名称", sort = 20)
    private String customerName;
    @ApiModelProperty("供应商代码")
    @ExcelField(title = "供应商代码", sort = 30)
    private String supplierNo;
    @ApiModelProperty("供应商名称")
    @ExcelField(title = "供应商名称", sort = 40)
    private String supplierName;

    @ApiModelProperty("货物代码")
    @ExcelField(title = "货物代码", sort = 50)
    private String materialNo;
    @ApiModelProperty("货物名称")
    @ExcelField(title = "货物名称", sort = 60)
    private String  materialName;

    @ApiModelProperty("货物数量")
    private Double quantity;
    @ApiModelProperty("单位体积")
    private BigDecimal  unitVolume;
    @ApiModelProperty("单位重量")
    private BigDecimal  unitWeight;
    @ApiModelProperty("体积")
    private BigDecimal  volume;
    @ApiModelProperty("货物数量")
    @ExcelField(title = "货物数量", sort = 70)
    private String excelQuantity;
    @ApiModelProperty("数量单位")
    @ExcelField(title = "数量单位", sort = 80)
    private String shipByPackOrqty;
    @ApiModelProperty("仓库类型")
    private String deliveryWarehouseType;
    @ApiModelProperty("仓库代码")
    @ExcelField(title = "仓库代码", sort = 90)
    private String deliveryWarehouseCode;
    @ApiModelProperty("仓库名称")
    @ExcelField(title = "仓库名称", sort = 100)
    private String deliveryWarehouseName;
    @ApiModelProperty("存储区代码")
    @ExcelField(title = "存储区代码", sort = 110)
    private String deliveryWarehouseAreaCode;
    @ApiModelProperty("存储区名称")
    @ExcelField(title = "存储区名称", sort = 120)
    private String deliveryWarehouseAreaName;
    @ApiModelProperty("是否加急")
    @ExcelField(title = "是否加急", sort = 130)
    private String hotYn;
    @ApiModelProperty("单据类型")
    @ExcelField(title = "单据类型", sort = 140)
    private String docType;

    @ApiModelProperty("配送线路")
    @ExcelField(title = "配送线路", sort = 150)
    private String distributeRouteCode;
    @ApiModelProperty("道口代码")
    @ExcelField(title = "道口代码", sort = 160)
    private String unloadDockCode;
    @ApiModelProperty("道口名称")
    @ExcelField(title = "道口名称", sort = 170)
    private String unloadDockName;

    @ApiModelProperty("导入报错")
    private String errorFlag;




    @ApiModelProperty("差异发货原因")
    @ExcelField(title = "差异发货原因", sort = 180)
    private String diffShipReason;
    @ApiModelProperty("是否mr")
    @ExcelField(title = "是否mr", sort = 190)
    private String mrYn;

    @ApiModelProperty("是否分解录入")
    @ExcelField(title = "是否分解录入", sort = 190)
    private String seperateInputYn;


    @ApiModelProperty("发货状态")
    @ExcelField(title = "发货状态", sort = 200)
    private String deliveryStatus;
    @ApiModelProperty("收货状态")
    @ExcelField(title = "收货状态", sort = 210)
    private String receStatus;

    @ApiModelProperty("发布时间")
    @ExcelField(title = "是否打印", sort = 220)
    private String publishTime;

    @ApiModelProperty("要求发货时间")
    @ExcelField(title = "要求发货时间", sort = 230)
    private String requestDeliveryTime;

    @ApiModelProperty("上次发货时间")
    @ExcelField(title = "上次发货时间", sort = 240)
    private String previousDepartTime;
    @ApiModelProperty("上次受货时间")
    @ExcelField(title = "上次受货时间", sort = 250)
    private String previousReceTime;



    @ApiModelProperty("关单原因")
    @ExcelField(title = "关单原因", sort = 260)
    private String closeReason;
    @ApiModelProperty("是否打印")
    @ExcelField(title = "是否打印", sort = 270)
    private String printYn;
    @ApiModelProperty("导入出错信息")
    private String importErrorMesg;
    @ApiModelProperty("导入出错码")
    private String errorCode;

    @ApiModelProperty("出库单号")
     String orderNo;
    @ApiModelProperty("打印时间")
    @ExcelField(title = "打印时间", sort = 271)
    private String excelPrintTime;
    @ApiModelProperty("单号")
    @ExcelField(title = "单号", sort = 280)
    private String caseNo;
    @ApiModelProperty("创建时间")
    @ExcelField(title = "创建时间", sort = 290)
    private String execlCreateTime;
    @ApiModelProperty("更新时间")
    @ExcelField(title = "更新时间", sort = 300)
    private String excelUpdateTime;

    @ApiModelProperty("创建时间")
    private Date createTime;
    @ApiModelProperty("更新时间")
    private Date updateTime;

    @ApiModelProperty("是否要委改")
    private String isRemodel;
    @ApiModelProperty("是否属地委改")
    private String isLocalityRemodel;
    @ApiModelProperty("属地委改仓库")
    private String localityRemodel;
    @ApiModelProperty("外地委改厂仓库")
    private String fieldRemodel;
    @ApiModelProperty("是否中转")
    private String isTransfer;
    @ApiModelProperty("外地中转库")
    private String fieldTransfer;
    @ApiModelProperty("运输方式")
    private String transportType;


}
